// 所有的函数都是Function的对象实例

// 1、自定义函数（命名函数）
function func1() {}

// 2、函数式表达式(匿名函数)
var func2 = function() {}

// 3、理由new Function(参数1，参数2...., 函数听)定义
var func3 = new Function('a', 'b', 'console.log(a+b)');
func3(1,2)
console.log(func1.prototype.__proto__ === Function.prototype)


// 4、为函数开启严格模式
// 严格模式下的限制
// 1、变量必须声明
// 2、不能随意删除已经声明好的变量
// 3、this的指向从window变成undefined
// 4、不能有重名从参数
// 不允许if for里面写函数
function func4() {
    'user strict'

}
func4()